//1.引入Vue
import Vue from 'vue';

//2.引入Vuex
import Vuex from 'vuex';

// 3.//3.Vuex其实本质是Vue的一个插件,所以我们要让Vue使用Vuex这个插件
Vue.use(Vuex)


//创建一个state对象
const state = {
    count: 0,
    price: 100
}
// 创建一个mutations(修改数据的)对象
const mutations = {
    increment(state) {
        state.count++
    },
    //mutation中的函数的第二个参数载荷(payload) 都是接收commit的传参
    //vuex还是希望payload是一个对象,这样可以传递多个参数
    incrementN(state, { n }) {
        state.count += n
    }

}

//4.创建一个store(vuex的实例),参数是一个配置对象,在配置对象中可以配置actions,mutations,state,getters等等
//暴露出去供Vue实例的配置项挂载
export default new Vuex.Store({
    state,
    mutations
})